package org.konghao.basic.model;

/**
 * 类SystemContext.java的实现描述：用来传递列表对象的ThreadLocal数据
 * 
 * @author wb-dumao 2014年12月25日 上午10:51:21
 */
public class SystemContext {

    /**
     * 分页大小
     */
    private static ThreadLocal<Integer> pageSize   = new ThreadLocal<Integer>();
    /**
     * 分页的起始页
     */
    private static ThreadLocal<Integer> pageOffset = new ThreadLocal<Integer>();
    /**
     * 列表的排序字段
     */
    private static ThreadLocal<String>  sort       = new ThreadLocal<String>();
    /**
     * 列表的排序方式
     */
    private static ThreadLocal<String>  order      = new ThreadLocal<String>();

    public static Integer getPageSize() {
        return pageSize.get();
    }

    public static void setPageSize(Integer _pageSize) {
        pageSize.set(_pageSize);
    }

    public static Integer getPageOffset() {
        return pageOffset.get();
    }

    public static void setPageOffset(Integer _pageOffset) {
        pageOffset.set(_pageOffset);
    }

    public static String getSort() {
        return sort.get();
    }

    public static void setSort(String _sort) {
        SystemContext.sort.set(_sort);
    }

    public static String getOrder() {
        return order.get();
    }

    public static void setOrder(String _order) {
        SystemContext.order.set(_order);
    }

    public static void removePageSize() {
        pageSize.remove();
    }

    public static void removePageOffset() {
        pageOffset.remove();
    }

    public static void removeSort() {
        sort.remove();
    }

    public static void removeOrder() {
        order.remove();
    }
}
